public class Student {
    // 私有属性（封装核心：属性仅类内部可直接访问）
    private String id;      // 学号
    private String name;    // 姓名
    private String gender;  // 性别
    private int age;        // 年龄

    // 1. 无参构造方法（默认初始化）
    public Student() {
    }

    // 2. 带参构造方法（初始化所有属性）
    public Student(String id, String name, String gender, int age) {
        this.id = id;
        this.name = name;
        this.gender = gender;
        this.age = age;
    }

    // 3. Getter 方法（获取私有属性值）
    public String getId() {
        return id;
    }

    public String getName() {
        return name;
    }

    public String getGender() {
        return gender;
    }

    public int getAge() {
        return age;
    }

    // 4. Setter 方法（修改私有属性值，可添加合法性校验，此处简化）
    public void setId(String id) {
        this.id = id;
    }

    public void setName(String name) {
        this.name = name;
    }

    public void setGender(String gender) {
        this.gender = gender;
    }

    public void setAge(int age) {
        // 可选：添加年龄合法性校验（如年龄不能小于0或大于150）
        if (age > 0 && age < 150) {
            this.age = age;
        } else {
            System.out.println("年龄输入不合法，已忽略修改！");
        }
    }

    // 5. 展示学生信息的方法
    public void showInfo() {
        System.out.println("学号：" + id);
        System.out.println("姓名：" + name);
        System.out.println("性别：" + gender);
        System.out.println("年龄：" + age);
        System.out.println("-----------------"); // 分隔线，提升可读性
    }
}